{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "lMov-LUSabxx"
   },
   "source": [
    "# Convolutional Neural Networks for Classifying Fashion-MNIST Dataset using Ignite\n",
    "This is a tutorial on using Ignite to train neural network models, setup experiments and validate models.\n",
    "\n",
    "In this notebook, we will be doing classification of images using Convolutional Neural Networks \n",
    "\n",
    "We will be using the [Fashion-MNIST dataset](https://github.com/zalandoresearch/fashion-mnist) Fashion-MNIST is a set of 28x28 greyscale images of clothes.\n",
    "\n",
    "![Fashion MNIST dataset](assets/fashion-mnist.png)\n",
    "\n",
    "Lets get started!"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "7PiU02-fabxz"
   },
   "source": [
    "### Importing libraries"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "mGjzG-Obabx0"
   },
   "source": [
    "General Data-Science Libraries like numpy, matplotlib and seaborn"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 0,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "HQhJpdeXabx1"
   },
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import seaborn as sns"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "xp_4isvHabx5"
   },
   "source": [
    "We import `torch`, `nn` and `functional` modules to create our models.\n",
    "\n",
    "We also import `datasets` and `transforms` from torchvision for loading the dataset and applying transforms to the images in the dataset.\n",
    "\n",
    "We import `Dataloader` for making train and validation loader for loading data into our model."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 0,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "DqR2DIQIabx6"
   },
   "outputs": [],
   "source": [
    "import torch\n",
    "from torch import nn, optim\n",
    "import torch.nn.functional as F\n",
    "from torch.utils.data import DataLoader\n",
    "from torchvision import datasets, transforms"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "Pj7oLY36abx8"
   },
   "source": [
    "`Ignite` is a High-level library to help with training neural networks in PyTorch. It comes with an `Engine` to setup a training loop, various metrics, handlers and a helpful contrib section! \n",
    "\n",
    "Below we import the following:\n",
    "* **Engine**: Runs a given process_function over each batch of a dataset, emitting events as it goes.\n",
    "* **Events**: Allows users to attach functions to an `Engine` to fire functions at a specific event. Eg: `EPOCH_COMPLETED`, `ITERATION_STARTED`, etc.\n",
    "* **Accuracy**: Metric to calculate accuracy over a dataset, for binary, multiclass, multilabel cases. \n",
    "* **Loss**: General metric that takes a loss function as a parameter, calculate loss over a dataset.\n",
    "* **RunningAverage**: General metric to attach to Engine during training. \n",
    "* **ModelCheckpoint**: Handler to checkpoint models. \n",
    "* **EarlyStopping**: Handler to stop training based on a score function. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 0,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "3zyDA_Wiabx8"
   },
   "outputs": [],
   "source": [
    "from ignite.engine import Events, create_supervised_trainer, create_supervised_evaluator\n",
    "from ignite.metrics import Accuracy, Loss, RunningAverage, ConfusionMatrix\n",
    "from ignite.handlers import ModelCheckpoint, EarlyStopping"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "vO53-X98abx-"
   },
   "source": [
    "The code below first sets up transform using `torhvision transfroms` for converting images to pytorch tensors and normalizing the images.\n",
    "\n",
    "Next, We use `torchvision datasets` for dowloading the fashion mnist dataset and applying transforms which we defined above.\n",
    "\n",
    "* `trainset` contains the training data.\n",
    "* `validationset` contains the validation data\n",
    "\n",
    "Next, We use `pytorch dataloader` for making dataloader from the train and validation sets."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 0,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "ggAEyjyuabx_"
   },
   "outputs": [],
   "source": [
    "# transform to normalize the data\n",
    "transform = transforms.Compose([transforms.ToTensor(),\n",
    "                                transforms.Normalize((0.5,), (0.5,))])\n",
    "\n",
    "# Download and load the training data\n",
    "trainset = datasets.FashionMNIST('./data', download=True, train=True, transform=transform)\n",
    "train_loader = DataLoader(trainset, batch_size=64, shuffle=True)\n",
    "\n",
    "# Download and load the test data\n",
    "validationset = datasets.FashionMNIST('./data', download=True, train=False, transform=transform)\n",
    "val_loader = DataLoader(validationset, batch_size=64, shuffle=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "Cvzm-Oe1abyB"
   },
   "source": [
    "### CNN Model"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "uf4AVJ44abyC"
   },
   "source": [
    "Explanation of Model Architecture\n",
    "\n",
    "* [Convolutional layers](https://pytorch.org/docs/stable/nn.html#conv2d), the Convolutional layer is used to create a convolution kernel that is convolved with the layer input to produce a tensor of outputs.\n",
    "* [Maxpooling layers](https://pytorch.org/docs/stable/nn.html#maxpool2d), the Maxpooling layer is used to downsample an input representation keeping the most active pixels from the previous layer.\n",
    "* The usual [Linear](https://pytorch.org/docs/stable/nn.html#linear) + [Dropout](https://pytorch.org/docs/stable/nn.html#dropout2d) layers to avoid overfitting and produce a 10-dim output.\n",
    "* We had used [Relu](https://pytorch.org/docs/stable/nn.html#id27) Non Linearity for the model and [logsoftmax](https://pytorch.org/docs/stable/nn.html#log-softmax) at the last layer because we are going to use the [NLLL loss](https://pytorch.org/docs/stable/nn.html#nllloss).\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 0,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "ohVVYyJpabyC"
   },
   "outputs": [],
   "source": [
    "class CNN(nn.Module):\n",
    "    \n",
    "    def __init__(self):\n",
    "        super(CNN, self).__init__()\n",
    "        \n",
    "        self.convlayer1 = nn.Sequential(\n",
    "            nn.Conv2d(1, 32, 3,padding=1),\n",
    "            nn.BatchNorm2d(32),\n",
    "            nn.ReLU(),\n",
    "            nn.MaxPool2d(kernel_size=2, stride=2)\n",
    "        )\n",
    "        \n",
    "        self.convlayer2 = nn.Sequential(\n",
    "            nn.Conv2d(32,64,3),\n",
    "            nn.BatchNorm2d(64),\n",
    "            nn.ReLU(),\n",
    "            nn.MaxPool2d(2)\n",
    "        )\n",
    "        \n",
    "        self.fc1 = nn.Linear(64*6*6,600)\n",
    "        self.drop = nn.Dropout2d(0.25)\n",
    "        self.fc2 = nn.Linear(600, 120)\n",
    "        self.fc3 = nn.Linear(120, 10)\n",
    "        \n",
    "    def forward(self, x):\n",
    "        x = self.convlayer1(x)\n",
    "        x = self.convlayer2(x)\n",
    "        x = x.view(-1,64*6*6)\n",
    "        x = self.fc1(x)\n",
    "        x = self.drop(x)\n",
    "        x = self.fc2(x)\n",
    "        x = self.fc3(x)\n",
    "        \n",
    "        return F.log_softmax(x,dim=1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "oqvY1QLBabyE"
   },
   "source": [
    "### Creating Model, Optimizer and Loss"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "8z2zUS5zabyF"
   },
   "source": [
    "Below we create an instance of the CNN model. The model is placed on a device and then a loss function of `negative log likelihood loss` and `Adam optimizer` with learning rate of 0.001 are setup. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 0,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "KSkcIOIlabyF"
   },
   "outputs": [],
   "source": [
    "# creating model,and defining optimizer and loss\n",
    "model = CNN()\n",
    "# moving model to gpu if available\n",
    "device = torch.device(\"cuda:0\" if torch.cuda.is_available() else \"cpu\")\n",
    "model.to(device)\n",
    "optimizer = optim.Adam(model.parameters(), lr=0.001)\n",
    "criterion = nn.NLLLoss()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "o69S4bEvabyI"
   },
   "source": [
    "### Training and Evaluating using Ignite"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "PALFpjYoabyJ"
   },
   "source": [
    "### Instantiating Training and Evaluating Engines\n",
    "\n",
    "Below we create 2 engines, a trainer, and a evaluator. By using the `create_supervised_trainer` and `create_supervised_evaluator` by passing the required arguments.\n",
    "\n",
    "We import the metrics from `ignite.metrics` which we want to calculate for the model. Like `Accuracy`, `ConfusionMatrix`, and `Loss` and we pass them to `evaluator` engine which will calculate these metrics for each iteration.\n",
    "\n",
    "* `training_history`: it stores the training loss and accuracy\n",
    "* `validation_history`:it stores the validation loss and accuracy\n",
    "* `last_epoch`: it stores the last epoch untill the model is trained\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 0,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "qMbolxIEabyJ"
   },
   "outputs": [],
   "source": [
    "# defining the number of epochs\n",
    "epochs = 12\n",
    "# creating trainer,evaluator\n",
    "trainer = create_supervised_trainer(model, optimizer, criterion, device=device)\n",
    "metrics = {\n",
    "    'accuracy':Accuracy(),\n",
    "    'nll':Loss(criterion),\n",
    "    'cm':ConfusionMatrix(num_classes=10)\n",
    "}\n",
    "evaluator = create_supervised_evaluator(model, metrics=metrics, device=device)\n",
    "training_history = {'accuracy':[],'loss':[]}\n",
    "validation_history = {'accuracy':[],'loss':[]}\n",
    "last_epoch = []"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "aonym06RabyL"
   },
   "source": [
    "### Metrics - RunningAverage\n",
    "\n",
    "To start, we will attach a metric of `RunningAverage` to track a running average of the scalar loss output for each batch. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 0,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "jokHCasNabyM"
   },
   "outputs": [],
   "source": [
    "RunningAverage(output_transform=lambda x: x).attach(trainer, 'loss')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "2vDAID6BabyP"
   },
   "source": [
    "### EarlyStopping - Tracking Validation Loss\n",
    "\n",
    "Now we will setup a `EarlyStopping` handler for this training process. EarlyStopping requires a score_function that allows the user to define whatever criteria to stop trainig. In this case, if the loss of the validation set does not decrease in 10 epochs, the training process will stop early.  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 0,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "hV2yv-NAabyP"
   },
   "outputs": [],
   "source": [
    "def score_function(engine):\n",
    "    val_loss = engine.state.metrics['nll']\n",
    "    return -val_loss\n",
    "\n",
    "handler = EarlyStopping(patience=10, score_function=score_function, trainer=trainer)\n",
    "evaluator.add_event_handler(Events.COMPLETED, handler)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "GZzf0wtLabyR"
   },
   "source": [
    "### Attaching Custom Functions to Engine at specific Events\n",
    "\n",
    "Below you will see ways to define your own custom functions and attaching them to various `Events` of the training process.\n",
    "\n",
    "The functions below both achieve similar tasks, they print the results of the evaluator run on a dataset. One function does that on the training evaluator and dataset, while the other on the validation. Another difference is how these functions are attached in the trainer engine.\n",
    "\n",
    "The first method involves using a decorator, the syntax is simple - `@` `trainer.on(Events.EPOCH_COMPLETED)`, means that the decorated function will be attached to the trainer and called at the end of each epoch. \n",
    "\n",
    "The second method involves using the add_event_handler method of trainer - `trainer.add_event_handler(Events.EPOCH_COMPLETED, custom_function)`. This achieves the same result as the above. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 0,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "_CSobXR1abyR"
   },
   "outputs": [],
   "source": [
    "@trainer.on(Events.EPOCH_COMPLETED)\n",
    "def log_training_results(trainer):\n",
    "    evaluator.run(train_loader)\n",
    "    metrics = evaluator.state.metrics\n",
    "    accuracy = metrics['accuracy']*100\n",
    "    loss = metrics['nll']\n",
    "    last_epoch.append(0)\n",
    "    training_history['accuracy'].append(accuracy)\n",
    "    training_history['loss'].append(loss)\n",
    "    print(\"Training Results - Epoch: {}  Avg accuracy: {:.2f} Avg loss: {:.2f}\"\n",
    "          .format(trainer.state.epoch, accuracy, loss))\n",
    "\n",
    "def log_validation_results(trainer):\n",
    "    evaluator.run(val_loader)\n",
    "    metrics = evaluator.state.metrics\n",
    "    accuracy = metrics['accuracy']*100\n",
    "    loss = metrics['nll']\n",
    "    validation_history['accuracy'].append(accuracy)\n",
    "    validation_history['loss'].append(loss)\n",
    "    print(\"Validation Results - Epoch: {}  Avg accuracy: {:.2f} Avg loss: {:.2f}\"\n",
    "          .format(trainer.state.epoch, accuracy, loss))\n",
    "    \n",
    "trainer.add_event_handler(Events.EPOCH_COMPLETED, log_validation_results)    "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "z4ZHDOs1abyT"
   },
   "source": [
    "### Confusion Matrix"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "j5NOsTQxabyU"
   },
   "source": [
    "Confusion matrix gives us a better idea of what our classification model is getting right and what types of errors it is making.\n",
    "\n",
    "We visualize the `confusion matrix` using the `seaborn.heatmap` from `seaborn` library."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 0,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "4ckHVNT6abyU"
   },
   "outputs": [],
   "source": [
    "@trainer.on(Events.COMPLETED)\n",
    "def log_confusion_matrix(trainer):\n",
    "    evaluator.run(val_loader)\n",
    "    metrics = evaluator.state.metrics\n",
    "    cm = metrics['cm']\n",
    "    cm = cm.numpy()\n",
    "    cm = cm.astype(int)\n",
    "    classes = ['T-shirt/top','Trouser','Pullover','Dress','Coat','Sandal','Shirt','Sneaker','Bag','Ankle Boot']\n",
    "    fig, ax = plt.subplots(figsize=(10,10))  \n",
    "    ax= plt.subplot()\n",
    "    sns.heatmap(cm, annot=True, ax = ax,fmt=\"d\")\n",
    "    # labels, title and ticks\n",
    "    ax.set_xlabel('Predicted labels')\n",
    "    ax.set_ylabel('True labels') \n",
    "    ax.set_title('Confusion Matrix') \n",
    "    ax.xaxis.set_ticklabels(classes,rotation=90)\n",
    "    ax.yaxis.set_ticklabels(classes,rotation=0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "HX-NImoSabyW"
   },
   "source": [
    "### ModelCheckpoint\n",
    "\n",
    "Lastly, we want to checkpoint this model. It's important to do so, as training processes can be time consuming and if for some reason something goes wrong during training, a model checkpoint can be helpful to restart training from the point of failure.\n",
    "\n",
    "Below we will use Ignite's `ModelCheckpoint` handler to checkpoint models at the end of each epoch."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 0,
   "metadata": {
    "colab": {},
    "colab_type": "code",
    "id": "eU4ZeJakabyW"
   },
   "outputs": [],
   "source": [
    "checkpointer = ModelCheckpoint('./models', 'fashionMNIST', save_interval=1, n_saved=2, create_dir=True, save_as_state_dict=True,require_empty=False)\n",
    "trainer.add_event_handler(Events.EPOCH_COMPLETED, checkpointer, {'fashionMNIST': model})"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "4YK6lGPHabyY"
   },
   "source": [
    "### Run Engine\n",
    "\n",
    "Next, we will run the trainer for 12 epochs and monitor results. Below we can see that custom functions defined above helps prints the `loss` and `accuracy` per epoch.  \n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 1000
    },
    "colab_type": "code",
    "id": "60nOj98kabyZ",
    "outputId": "7be20f83-52e2-4a15-de4c-dfc2d59e9e3f"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Training Results - Epoch: 1  Avg accuracy: 89.76 Avg loss: 0.29\n",
      "Validation Results - Epoch: 1  Avg accuracy: 88.49 Avg loss: 0.32\n",
      "Training Results - Epoch: 2  Avg accuracy: 91.58 Avg loss: 0.24\n",
      "Validation Results - Epoch: 2  Avg accuracy: 89.89 Avg loss: 0.29\n",
      "Training Results - Epoch: 3  Avg accuracy: 93.10 Avg loss: 0.19\n",
      "Validation Results - Epoch: 3  Avg accuracy: 90.76 Avg loss: 0.25\n",
      "Training Results - Epoch: 4  Avg accuracy: 92.99 Avg loss: 0.19\n",
      "Validation Results - Epoch: 4  Avg accuracy: 91.03 Avg loss: 0.26\n",
      "Training Results - Epoch: 5  Avg accuracy: 93.77 Avg loss: 0.17\n",
      "Validation Results - Epoch: 5  Avg accuracy: 91.00 Avg loss: 0.26\n",
      "Training Results - Epoch: 6  Avg accuracy: 94.42 Avg loss: 0.16\n",
      "Validation Results - Epoch: 6  Avg accuracy: 90.76 Avg loss: 0.27\n",
      "Training Results - Epoch: 7  Avg accuracy: 94.82 Avg loss: 0.14\n",
      "Validation Results - Epoch: 7  Avg accuracy: 91.21 Avg loss: 0.27\n",
      "Training Results - Epoch: 8  Avg accuracy: 95.62 Avg loss: 0.12\n",
      "Validation Results - Epoch: 8  Avg accuracy: 91.28 Avg loss: 0.26\n",
      "Training Results - Epoch: 9  Avg accuracy: 94.22 Avg loss: 0.16\n",
      "Validation Results - Epoch: 9  Avg accuracy: 90.57 Avg loss: 0.32\n",
      "Training Results - Epoch: 10  Avg accuracy: 95.28 Avg loss: 0.13\n",
      "Validation Results - Epoch: 10  Avg accuracy: 91.07 Avg loss: 0.30\n",
      "Training Results - Epoch: 11  Avg accuracy: 96.23 Avg loss: 0.10\n",
      "Validation Results - Epoch: 11  Avg accuracy: 91.10 Avg loss: 0.29\n",
      "Training Results - Epoch: 12  Avg accuracy: 96.75 Avg loss: 0.09\n",
      "Validation Results - Epoch: 12  Avg accuracy: 91.26 Avg loss: 0.29\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<ignite.engine.engine.State at 0x7f975edc15c0>"
      ]
     },
     "execution_count": 13,
     "metadata": {
      "tags": []
     },
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\neRtLRERE5E+pQQfIZ9npoN0E3A0cB6wDGkWniYiIiEgeyM5vca4HLs+HLCIiIiIZcgrWGLRDFmhm\n9hYZXB/O3bvnSSIRERGRAi47Y9C+Tne/CHAxsDJv4oiIiIgcLLWA/ZRAdg5xDkr/2MwGABPzLJGI\niIhIAXc4P/VUHTg6t4OIiIiISER2xqBt5s8xaHHAb8D9eRlKREREJL1UnSTwJzMzoDawOjop1d0L\n2FFgERERkfyVZYHm7m5mo9z9jPwKJCIiInKggnaZjeyMQZtlZnXzPImIiIiIAFl00Mwswd33AnWB\nqWa2BNgBGJHm2ln5lFFEREQKOP3U059+jP63E3AycAHwN+DS6H8lj7Vt04K5P3/HgnkTufeeW4KO\nc0hv9XmOpFWzmTVzbNBRsi3W9jHEXuYw5x3wyXAu6nY7nbvdxoCPhwHw70ef5ZIb7uSSG+6kzWX/\n4JIb7kxb/pcly7nq5vvo3O02Lr7udnbv3hNU9IOEeT/v06d3L1atnMXMGX9eXvOSLhcya+ZY/ti1\ngrPOqhVgukOLhX3cu3cvVq6YyYzpf+7jp558iDmzxzFt6mgGD3qL0qVLBZhQsiurAs0A3H1JRrd8\nyrd/ILOHzGyu2f+zd+fxWs75H8dfn7O0aEXSqiL7oKhGlpCElBBhMAymmbGPwSx2w48Z+06WJKTs\nW5JSiqE9RYWK0ibRorSe8/n9cV3ndKqz5pxzfa96Pz3uR+e+7u19Ltd97u/9ub6LTTazSWb223J4\nzhFm1ubX3qe8ZWRk8MD9t9G129nsd8BRnH76Sey99+6VGaHMnn12ICd0PSvpGKWWxn2ctswh5/16\n1mxeeft9+j92J688eR8ffjKOOXMXcPeNV/PKU/fxylP3ccwR7enUoT0A69fn8I/b7uX6K//MG888\nSJ/7biUrKzPh3yIS8n4u6Nl+L9G129kbbfti6pf0PP2PjBo1OqFUpZOWfdyv30t0O/GcjbYN+2AU\nrQ/sRJu2nfn661nBNi5L4lilXpJWXANtJzO7sqhLpSWMmVl7oCtwoLvvD3RiK17RoF3b1syc+S3f\nfDOHdevWMXDgG5zY7dikYxVr1Eej+WnJ0qRjlFoa93HaMoecd9acuey3z+5Ur1aVrKxM2rTal6Gj\nPsm/3d0ZPPxjuhx9OAD/GzeRPXZtzl4tWwBQt05tMjPDaKCFvJ8L+uij0SzZ5G/E9Okz+OqrWQkl\n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\nVI6RR5urLkAAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 720x720 with 2 Axes>"
      ]
     },
     "metadata": {
      "tags": []
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "trainer.run(train_loader, max_epochs=epochs)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "hTwbdtI_abyg"
   },
   "source": [
    "### Plotting the loss and accuracy\n",
    "Next, we will plot the loss and accuracy which we have stored in the `training_history` and `validation_history` dictionary to see how loss and accuracy are changing with each epoch."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 283
    },
    "colab_type": "code",
    "id": "eq1lElKvabyg",
    "outputId": "deb373b3-7cf9-463a-d7e5-1555b7c32c78"
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "tags": []
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(training_history['accuracy'],label=\"Training Accuracy\")\n",
    "plt.plot(validation_history['accuracy'],label=\"Validation Accuracy\")\n",
    "plt.xlabel('No. of Epochs')\n",
    "plt.ylabel('Accuracy')\n",
    "plt.legend(frameon=False)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 283
    },
    "colab_type": "code",
    "id": "NrOR7xRoabyl",
    "outputId": "f70dc4ea-1780-434d-deb1-0fca4a5e9c8c"
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n/wGyt/gQXGZn1gAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "tags": []
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(training_history['loss'],label=\"Training Loss\")\n",
    "plt.plot(validation_history['loss'],label=\"Validation Loss\")\n",
    "plt.xlabel('No. of Epochs')\n",
    "plt.ylabel('Loss')\n",
    "plt.legend(frameon=False)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "NW9ze2HCabyp"
   },
   "source": [
    "### Loading the saved model from the disk\n",
    "Loading the saved pytorch model from the disk for inferencing."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 33
    },
    "colab_type": "code",
    "id": "51rlITBKabyp",
    "outputId": "dcea38d5-f57d-41ff-cecc-3bcbe1c99207"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Model Loaded\n"
     ]
    }
   ],
   "source": [
    "# loading the saved model\n",
    "model.load_state_dict(torch.load('models/fashionMNIST_fashionMNIST_'+str(len(last_epoch))+'.pth'))\n",
    "print(\"Model Loaded\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "QNRWgV0Kabys"
   },
   "source": [
    "### Inferencing the model \n",
    "Below code will be used for inferencing from the model and visualizing the results.\n",
    "\n",
    "Here we do iteration from the `val_loader` and then select the class with highest probability and then compare it with actul class."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 169
    },
    "colab_type": "code",
    "id": "r1Wxg-K9abys",
    "outputId": "a203e030-74d1-4ce4-a8eb-c7ff98f28ec3"
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\nRK5CYII=\n",
      "text/plain": [
       "<Figure size 1800x288 with 10 Axes>"
      ]
     },
     "metadata": {
      "tags": []
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# classes of fashion mnist dataset\n",
    "classes = ['T-shirt/top','Trouser','Pullover','Dress','Coat','Sandal','Shirt','Sneaker','Bag','Ankle Boot']\n",
    "# creating iterator for iterating the dataset\n",
    "dataiter = iter(val_loader)\n",
    "images, labels = dataiter.next()\n",
    "images_arr = []\n",
    "labels_arr = []\n",
    "pred_arr = []\n",
    "# moving model to cpu for inference \n",
    "model.to(\"cpu\")\n",
    "# iterating on the dataset to predict the output\n",
    "for i in range(0,10):\n",
    "    images_arr.append(images[i].unsqueeze(0))\n",
    "    labels_arr.append(labels[i].item())\n",
    "    ps = torch.exp(model(images_arr[i]))\n",
    "    ps = ps.data.numpy().squeeze()\n",
    "    pred_arr.append(np.argmax(ps))\n",
    "# plotting the results\n",
    "fig = plt.figure(figsize=(25,4))\n",
    "for i in range(10):\n",
    "    ax = fig.add_subplot(2, 20/2, i+1, xticks=[], yticks=[])\n",
    "    ax.imshow(images_arr[i].resize_(1, 28, 28).numpy().squeeze())\n",
    "    ax.set_title(\"{} ({})\".format(classes[pred_arr[i]], classes[labels_arr[i]]),\n",
    "                 color=(\"green\" if pred_arr[i]==labels_arr[i] else \"red\"))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "colab_type": "text",
    "id": "cWXOEpQ4abyv"
   },
   "source": [
    "### Refrences \n",
    "* [Pytorch Ignite Text CNN example notebook](https://github.com/pytorch/ignite/blob/master/examples/notebooks/TextCNN.ipynb)\n",
    "* [Pytorch Ignite MNIST example](https://github.com/pytorch/ignite/blob/master/examples/mnist/mnist.py)"
   ]
  }
 ],
 "metadata": {
  "accelerator": "GPU",
  "colab": {
   "name": "FashionMNIST.ipynb",
   "provenance": [],
   "version": "0.3.2"
  },
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
